home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Games of Daze
/
Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso
/
x2ftp
/
msdos
/
libs
/
knowhow4
/
remember.cpp
< prev
next >
Wrap
C/C++ Source or Header
|
1994-10-10
|
2KB
|
56 lines
// REMEMBER.CPP
#include <remember.h> ::putimage(where.origin.X, where.origin.Y, image1);
void Remember::getimage(rect where, int width)
{
if(image1 != NULL)
delete image1;
if(image2 != NULL)
delete image2;
if(image3 != NULL)
delete image3;
if(image4 != NULL)
delete image4;
image1 = image2 = image3 = image4 = NULL;
int size_vert = imagesize(where.origin.X, where.origin.Y,
where.origin.X + width, where.corner.Y + 2);
int size_horiz = imagesize(where.origin.X, where.origin.Y,
where.corner.X + 2, where.origin.Y + width);
image1 = malloc(size_vert); // ATTENTION !!! For speed we do not
// include any verification here
// rewrite if necessary
::getimage(where.origin.X, where.origin.Y,
where.origin.X + width - 1, where.corner.Y - 1,
image1);
image2 = malloc(size_vert);
::getimage(where.corner.X - width + 1, where.origin.Y,
where.corner.X, where.corner.Y, image2);
image3 = malloc(size_horiz);
::getimage(where.origin.X, where.origin.Y,
where.corner.X, where.origin.Y + width - 1, image3);
image4 = malloc(size_horiz);
::getimage(where.origin.X, where.corner.Y - width + 1,
where.corner.X, where.corner.Y, image4);
}
/////////////////////////////
void Remember::putimage(rect where, int width, int put)
{
if(image1 != NULL)
::putimage(where.origin.X, where.origin.Y, image1, put);
if(image2 != NULL)
::putimage(where.corner.X - width + 1, where.origin.Y, image2, put);
if(image3 != NULL)
::putimage(where.origin.X, where.origin.Y, image3, put);
if(image4 != NULL)
::putimage(where.origin.X, where.corner.Y - width + 1, image4, put);
delete image4;
delete image3;
delete image2;
delete image1;
image1 = image2 = image3 = image4 = NULL;
}
///////////////////////////